String类型

描述

  • String类型对应原始类型中的string类型

大小写转换

  • 表示将指定字符串中内容(英文)小小写的转换

toUpperCase()方法

  • 表示将内容转换成大写

toLowerCase()方法

  • 表示将内容转换成小写
/* 定义一个字符串 */
var str = 'sanbubaitou';
/* 将字符串转换成全大写 */
var s = str.toUpperCase();
console.log( s );//SANBUBAITOU
/* 将字符串转换成全小写 */
console.log( s.toLowerCase() );//sanbubaitou

根据指定位置获取字符串内容

  • 表示通过指定字符串中指定字符的位置(索引值)来获取对应的内容

charAt()方法

  • 表示返回指定的字符内容

charCodeAt()方法

  • 表示返回指定的字符内容所对应的 Unicode码
var str = 'sanbubaitou';
/* length属性表示字符串的长度(字符的个数) */
console.log( str.length );// 显示 11

/* charAt()方法 */
console.log( str.charAt( 0 ) );// 显示 s
/* charCodeAt()方法 */
console.log( str.charCodeAt( 0 ) );// 显示 115(Unicode码)

检索字符串

  • 表示检索目标字符串中是否存在指定字符

indexOf()方法

  • 表示从左到右的顺序进行检索

lastIndexOf()方法

  • 表示从右到左的顺序进行检索

注意

  • 以上两种方法只能匹配到第一个与目标字符相同的字符,并显示位置信息

    • 如果指定字符串中存在多个相同的字符,只会找到第一个,剩下的将不会再去查找
  • 如果需要检索的字符不存在会显示 -1(固定写法)
/* 定义一个字符串 */
var str = 'sanbubaitou';

/* 通过indexOf()方法进行检测 */
console.log( str.indexOf( 'a' ) );// 显示 1(索引值)
/* 通过lastIndexOf()方法进行检测 */
console.log( str.lastIndexOf( 'u' ) );// 显示 10(索引值)
/* 检测的目标不存在时 */
console.log( str.indexOf( 'w' ) );// 显示 -1

截取字符串

  • 表示对指定的字符串进行截取

slice()方法

  • 表示截取指定字符串,并将截取的内容组成一个新的字符串进行返回
  • 该方法的参数

    • 第一个参数 - 表示开始截取的位置
    • 第二个参数 - 表示结束截取的位置
/* 定义一个字符串 */
var str = 'sanbubaitou';

/* slice()方法 */
console.log( str.slice( 4, 8 ) );// 显示 ubai

substr()方法

  • 表示通过指定的长度来进行截取,并将截取的内容组成一个新的字符串进行返回
  • 该方法的参数

    • 第一个参数 - 表示开始截取的位置
    • 第二个参数 - 表示截取的长度
/* 定义一个字符串 */
var str = 'sanbubaitou';
/* substr()方法 */
console.log( str.substr( 5, 10 ) );// 显示 baitou

substring()方法

  • 表示截取指定字符串,并将截取的内容组成一个新的字符串进行返回
  • 该方法的参数

    • 第一个参数 - 表示开始截取的位置
    • 第二个参数 - 表示结束截取的位置
/* 定义一个字符串 */
var str = 'sanbubaitou';
/* substring()方法 */
console.log( str.substring( 3, 9 ) );// 显示 bubait

slice()方法 和 substring()方法 的对比

  • slice()方法的参数可以写负值

    • 负值 - 表示反方向截取
  • substring()方法的参数不可以写负数

    • 写了负值将不会有显示
/* 定义一个字符串 */
var str = 'sanbubaitou';
/* slice()方法 */
console.log( str.slice( -8, -4 ) );// 显示 buba
/* substring()方法 */
console.log( str.substring( -9, -3 ) );// 没有显示

分隔字符串

  • 表示对指定的字符串进行分隔,并将分隔后的字符以数组的形式进行返回

split()方法

  • 用于对字符串进行分隔
  • 参数 - 字符与字符之间的分隔符

    • 分隔符是什么就写什么,没有就写空字符串
/* 定义一个字符串 */
var str1 = 's,a,n,b,u,b,a,i,t,o,u';
/* 分隔字符串 - 有分隔符的 */
var s1 = str1.split( ',' );
console.log( s1 );// 显示 [ 's', 'a', 'n', 'b', 'u', 'b', 'a', 'i', 't', 'o', 'u' ]

/* 定义另一个字符串 */
var str2 = 'sanbubaitou';
/* 分隔字符串 - 没有分隔符的 */
var s2 = str2.split( '' );
console.log( s2 );// 显示 [ 's', 'a', 'n', 'b', 'u', 'b', 'a', 'i', 't', 'o', 'u' ]

替换子字符串

  • 表示匹配指定字符串中的指定内容,将其替换成新的内容

replace()方法

  • 用于对字符串中的内容进行替换
  • 参数

    • 第一个参数 - 定义正则表达式(搜索并匹配被替换的内容)
    • 第二个参数 - 替换的新内容
  • 该方法具有返回值

    • 将返回替换后的新字符串
/* 定义一个字符串 */
var str = 'Microsoft is a big Company, microsoft’s color is red and has MICROSOFT logo like microsoft';

/* 进行替换 */
var s1 = str.replace( /microsoft/, '三步白头' );
console.log( s1 );// 显示 Microsoft is a big Company, 三步白头’s color is red and has MICROSOFT logo like microsoft

/* 添加修饰符搜索 */
var s2 = str.replace( /microsoft/i, '三步白头' );
console.log( s2 );// 显示 三步白头 is a big Company, microsoft’s color is red and has MICROSOFT logo like microsoft

/* 添加修饰符搜索 */
var s3 = str.replace( /microsoft/ig, '三步白头' );
console.log( s3 );// 显示 三步白头 is a big Company, 三步白头’s color is red and has 三步白头 logo like 三步白头

匹配字符串

  • 表示通过正则表达式匹配指定字符串中的指定内容

match()方法

  • 用于对指定字符串中的内容进行匹配
  • 参数 - 正则表达式的匹配判断条件
  • 该方法具有返回值 - 一个数组

    • 第一个元素 - 表示匹配的内容
    • 第二个元素 - 表示匹配内容所在的位置(索引值)
    • 第三个元素 - 表示完整字符串
  • 如果匹配的内容数量大于一个将返回所有匹配的内容
/* 定义一个字符串 */
var str = 'Microsoft is a big Company, microsoft’s color is red and has MICROSOFT logo like microsoft';

/* 进行匹配 */
var s1 = str.match( /microsoft/ );
console.log( s1 );// 显示 [ 'microsoft', index: 28, input: 'Microsoft is a big Company, microsoft’s color is red and has MICROSOFT logo like microsoft' ]

/* 添加修饰符匹配 */
var s2 = str.match( /microsoft/i );
console.log( s2 );// 显示 [ 'Microsoft', index: 0, input: 'Microsoft is a big Company, microsoft’s color is red and has MICROSOFT logo like microsoft' ]

/* 添加修饰符匹配 */
var s3 = str.match( /microsoft/ig );
console.log( s3 );// 显示 [ 'Microsoft', 'microsoft', 'MICROSOFT', 'microsoft' ]

查找字符串

  • 表示通过正则表达式去查找指定字符串中的指定内容

search()方法

  • 用于查找指定字符串中的内容
  • 参数 - 正则表达式的匹配判断条件
  • 该方法具有返回值 - 一个数组

    • 如果只匹配一个指定内容的话,返回匹配内容第一个字符的索引值
    • 如果匹配是多个指定内容的话,返回第一个匹配内容的第一个字符的索引值
/* 定义一个字符串 */
var str = 'Microsoft is a big Company, microsoft’s color is red and has MICROSOFT logo like microsoft';

/* 进行匹配 */
var s1 = str.search( /microsoft/ );
console.log( s1 );// 显示 28(索引值)

/* 添加修饰符匹配 */
var s2 = str.search( /microsoft/i );
console.log( s2 );// 显示 0(索引值)

/* 添加修饰符匹配 */
var s3 = str.search( /microsoft/ig );
console.log( s3 );// 显示 0(索引值)

蔡志远
9 声望5 粉丝